package view;

import java.awt.Font;
import java.util.Calendar;
import java.util.GregorianCalendar;

import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableModel;

import util.hilo.Hilo03;

import com.toedter.calendar.JDateChooser;

import controller.JFrmAsignacionController;

public class JFrmAsignacionBien extends JInternalFrame {
	
	public JTextField txtCodigoAsignacion;
	public JTextField txtCodigoRegistrador;
	public JTextField txtFechaAsignacion;
	public JTextField txtDescripcionBien;
	public JTextField txtCodigoBien;
	public JTextField txtEstadoBien;
	public JTextField txtNombrePersonal;
	public JTextField txtCodigoPersonal;
	public JTextField txtApellidoPersonal;
	public JTable table;
	public JButton btnBuscarBien;
	public JButton btnBuscarPersonal;
	public JButton btnAgregar;
	public JButton btnQuitar;
	public JButton btnGenerarActa;
	private JFrmAsignacionController controller= new JFrmAsignacionController(this);
	public JDateChooser dateChooser;
	public boolean flag;
	public Calendar hoy, fecha;

	/**
	 * Create the frame.
	 */
	public JFrmAsignacionBien() {
		setBounds(100, 100, 702, 576);
		getContentPane().setLayout(null);
		setTitle("Asignacion de Bien");
		setToolTipText("Asignacion de Bien");
		setClosable(true);
		setIconifiable(true);
		
		flag = false;
		hoy = Calendar.getInstance();
		fecha = Calendar.getInstance();

		
		JLabel lblAsignacionDeBienes = new JLabel("Asignacion de Bienes");
		lblAsignacionDeBienes.setFont(new Font("Modern No. 20", Font.BOLD | Font.ITALIC, 20));
		lblAsignacionDeBienes.setBounds(249, 11, 205, 14);
		getContentPane().add(lblAsignacionDeBienes);
		
		JPanel pnlAsignacionBienes = new JPanel();
		pnlAsignacionBienes.setBounds(38, 43, 585, 66);
		getContentPane().add(pnlAsignacionBienes);
		pnlAsignacionBienes.setLayout(null);
		
		JLabel lblCodigo = new JLabel("Codigo Asignaci\u00F3n");
		lblCodigo.setBounds(10, 14, 115, 14);
		pnlAsignacionBienes.add(lblCodigo);
		
		JLabel lblUsuario = new JLabel("C\u00F3digo Registrador");
		lblUsuario.setBounds(10, 39, 115, 14);
		pnlAsignacionBienes.add(lblUsuario);
		
		txtCodigoAsignacion = new JTextField();
		txtCodigoAsignacion.setEditable(false);
		txtCodigoAsignacion.setBounds(149, 8, 86, 20);
		pnlAsignacionBienes.add(txtCodigoAsignacion);
		txtCodigoAsignacion.setColumns(10);
		
		txtCodigoRegistrador = new JTextField();
		txtCodigoRegistrador.setEditable(false);
		txtCodigoRegistrador.setBounds(149, 33, 86, 20);
		pnlAsignacionBienes.add(txtCodigoRegistrador);
		txtCodigoRegistrador.setColumns(10);
		
		JLabel lblFecha = new JLabel("Fecha y Hora de Registro");
		lblFecha.setBounds(393, 14, 146, 14);
		pnlAsignacionBienes.add(lblFecha);
		
		txtFechaAsignacion = new JTextField();
		txtFechaAsignacion.setEditable(false);
		txtFechaAsignacion.setBounds(393, 36, 122, 20);
		pnlAsignacionBienes.add(txtFechaAsignacion);
		txtFechaAsignacion.setColumns(10);
		
		JPanel pnlDatosAsignacion = new JPanel();
		pnlDatosAsignacion.setBorder(new TitledBorder(null, "Detalle", TitledBorder.LEADING, TitledBorder.TOP, null, null));
		pnlDatosAsignacion.setBounds(10, 137, 550, 193);
		getContentPane().add(pnlDatosAsignacion);
		pnlDatosAsignacion.setLayout(null);
		
		JPanel pnlElegirBien = new JPanel();
		pnlElegirBien.setBorder(new TitledBorder(null, "Elegir Bien", TitledBorder.LEADING, TitledBorder.TOP, null, null));
		pnlElegirBien.setBounds(10, 23, 257, 115);
		pnlDatosAsignacion.add(pnlElegirBien);
		pnlElegirBien.setLayout(null);
		
		JLabel lblCodigo_1 = new JLabel("Codigo");
		lblCodigo_1.setBounds(10, 18, 46, 14);
		pnlElegirBien.add(lblCodigo_1);
		
		JLabel lblNewLabel = new JLabel("Descripcion");
		lblNewLabel.setBounds(10, 49, 86, 14);
		pnlElegirBien.add(lblNewLabel);
		
		txtDescripcionBien = new JTextField();
		txtDescripcionBien.setEditable(false);
		txtDescripcionBien.setBounds(82, 46, 161, 20);
		pnlElegirBien.add(txtDescripcionBien);
		txtDescripcionBien.setColumns(10);
		
		txtCodigoBien = new JTextField();
		txtCodigoBien.setEditable(false);
		txtCodigoBien.setBounds(72, 15, 86, 20);
		pnlElegirBien.add(txtCodigoBien);
		txtCodigoBien.setColumns(10);
		
		txtEstadoBien = new JTextField();
		txtEstadoBien.setEditable(false);
		txtEstadoBien.setColumns(10);
		txtEstadoBien.setBounds(80, 74, 140, 20);
		pnlElegirBien.add(txtEstadoBien);
		
		btnBuscarBien = new JButton("Buscar");
		btnBuscarBien.setBounds(168, 14, 65, 23);
		btnBuscarBien.addActionListener(controller);
		pnlElegirBien.add(btnBuscarBien);
		
		JLabel lblEstado = new JLabel("Estado");
		lblEstado.setBounds(10, 74, 46, 20);
		pnlElegirBien.add(lblEstado);
		
		JPanel pnlElegirPersonal = new JPanel();
		pnlElegirPersonal.setLayout(null);
		pnlElegirPersonal.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Personal Asignado", TitledBorder.LEADING, TitledBorder.TOP, null, null));
		pnlElegirPersonal.setBounds(277, 23, 263, 115);
		pnlDatosAsignacion.add(pnlElegirPersonal);
		
		JLabel label_1 = new JLabel("Codigo");
		label_1.setBounds(20, 18, 46, 14);
		pnlElegirPersonal.add(label_1);
		
		JLabel label_2 = new JLabel("Nombre");
		label_2.setBounds(10, 49, 64, 14);
		pnlElegirPersonal.add(label_2);
		
		txtNombrePersonal = new JTextField();
		txtNombrePersonal.setEditable(false);
		txtNombrePersonal.setColumns(10);
		txtNombrePersonal.setBounds(72, 46, 181, 20);
		pnlElegirPersonal.add(txtNombrePersonal);
		
		txtCodigoPersonal = new JTextField();
		txtCodigoPersonal.setEditable(false);
		txtCodigoPersonal.setColumns(10);
		txtCodigoPersonal.setBounds(72, 15, 106, 20);
		pnlElegirPersonal.add(txtCodigoPersonal);
		
		btnBuscarPersonal = new JButton("Buscar");
		btnBuscarPersonal.setBounds(188, 14, 65, 23);
		btnBuscarPersonal.addActionListener(controller);
		pnlElegirPersonal.add(btnBuscarPersonal);
		
		JLabel lblApellido = new JLabel("Apellido");
		lblApellido.setBounds(10, 77, 64, 14);
		pnlElegirPersonal.add(lblApellido);
		
		txtApellidoPersonal = new JTextField();
		txtApellidoPersonal.setEditable(false);
		txtApellidoPersonal.setColumns(10);
		txtApellidoPersonal.setBounds(72, 74, 181, 20);
		pnlElegirPersonal.add(txtApellidoPersonal);
		
		JLabel lblFechaAsignada = new JLabel("Fecha Asignada");
		lblFechaAsignada.setBounds(20, 149, 113, 20);
		pnlDatosAsignacion.add(lblFechaAsignada);
		
		dateChooser = new JDateChooser();
		dateChooser.setDateFormatString("yyyy-MM-dd");
		dateChooser.setBounds(119, 149, 162, 20);
		dateChooser.setCalendar((Calendar) (new GregorianCalendar()));
		pnlDatosAsignacion.add(dateChooser);
		
		btnAgregar = new JButton("Agregar");
		btnAgregar.setBounds(570, 149, 106, 38);
		btnAgregar.addActionListener(controller);
		getContentPane().add(btnAgregar);
		
		btnQuitar = new JButton("Quitar");
		btnQuitar.setBounds(570, 198, 106, 38);
		btnQuitar.addActionListener(controller);
		getContentPane().add(btnQuitar);
		
		JPanel pnlLista = new JPanel();
		pnlLista.setBounds(10, 341, 666, 167);
		getContentPane().add(pnlLista);
		pnlLista.setLayout(null);
		
		JScrollPane scrollPane = new JScrollPane();
		scrollPane.setBounds(10, 23, 526, 133);
		pnlLista.add(scrollPane);
		
		table = new JTable();
		table.setModel(new DefaultTableModel(
			new Object[][] {
			},
			new String[] {
				"ID Asignaci\u00F3n", "Codigo", "Bien", "Codigo", "Usuario", "Fecha Asignada"
			}
		) {
			boolean[] columnEditables = new boolean[] {
				false, false, false, false, false, false
			};
			public boolean isCellEditable(int row, int column) {
				return columnEditables[column];
			}
		});
		table.getColumnModel().getColumn(0).setResizable(false);
		table.getColumnModel().getColumn(1).setResizable(false);
		table.getColumnModel().getColumn(2).setResizable(false);
		table.getColumnModel().getColumn(2).setPreferredWidth(84);
		table.getColumnModel().getColumn(3).setResizable(false);
		table.getColumnModel().getColumn(4).setResizable(false);
		table.getColumnModel().getColumn(4).setPreferredWidth(84);
		table.getColumnModel().getColumn(5).setResizable(false);
		table.getColumnModel().getColumn(5).setPreferredWidth(101);
		//table.setModel(controller.modelo);
		scrollPane.setViewportView(table);
		
		btnGenerarActa = new JButton("Generar Acta");
		btnGenerarActa.setBounds(546, 58, 110, 35);
		btnGenerarActa.addActionListener(controller);
		pnlLista.add(btnGenerarActa);
		
		JButton btnImprimir = new JButton("Imprimir");
		btnImprimir.setBounds(546, 104, 110, 35);
		pnlLista.add(btnImprimir);
		
		Hilo03 h3= new Hilo03(txtFechaAsignacion);
		h3.start();
		controller.limpiarCampos();
		
	}
}
